#pragma once

#include <QWidget>
#include "ui_cylinderWindow.h"
#include "modelSoft.h"

QT_BEGIN_NAMESPACE
namespace Ui { class cylinderWindowClass; };
QT_END_NAMESPACE

class cylinderWindow : public QWidget
{
	Q_OBJECT

public:
	cylinderWindow(modelSoft* myModelSoft, CylinderFeature* m_cylinderFeature,QWidget *parent = nullptr);
	~cylinderWindow();

	double get_cylinder_radius1();
	double get_cylinder_radius2();

private slots:
	void makeCylinder_onClick();

protected:
	void createConnections();
	void receivePos(const TopoDS_Shape& shape);
	void onClickVertexSelect();
	void onRadius1Changed();
	void onRadius2Changed();
	virtual void closeEvent(QCloseEvent* event) override;


private:
	Ui::cylinderWindowClass *ui;
	modelSoft* myModelSoft;
	gp_Pnt point_pos = gp_Pnt(0, 0, 0);
	Standard_Integer shapeID;
	CylinderFeature* cylinderFeature;
	bool confirmCreate = false;
	bool edit = false;
	Handle(QIVtkSelectionPipeline) cylinderPipeline;

};
